#!/usr/bin/env python3
# Copyright (C) 2019 Checkmk GmbH - License: GNU General Public License v2
# This file is part of Checkmk (https://checkmk.com). It is subject to the terms and
# conditions defined in the file COPYING, which is part of this source code package.

# fmt: off
# mypy: disable-error-code=var-annotated

checkname = "dotnet_clrmemory"

info = [
    [
        "AllocatedBytesPersec",
        "Caption",
        "Description",
        "FinalizationSurvivors",
        "Frequency_Object",
        "Frequency_PerfTime",
        "Frequency_Sys100NS",
        "Gen0heapsize",
        "Gen0PromotedBytesPerSec",
        "Gen1heapsize",
        "Gen1PromotedBytesPerSec",
        "Gen2heapsize",
        "LargeObjectHeapsize",
        "Name",
        "NumberBytesinallHeaps",
        "NumberGCHandles",
        "NumberGen0Collections",
        "NumberGen1Collections",
        "NumberGen2Collections",
        "NumberInducedGC",
        "NumberofPinnedObjects",
        "NumberofSinkBlocksinuse",
        "NumberTotalcommittedBytes",
        "NumberTotalreservedBytes",
        "PercentTimeinGC",
        "PercentTimeinGC_Base",
        "ProcessID",
        "PromotedFinalizationMemoryfromGen0",
        "PromotedMemoryfromGen0",
        "PromotedMemoryfromGen1",
        "Timestamp_Object",
        "Timestamp_PerfTime",
        "Timestamp_Sys100NS",
    ],
    [
        "687389776176",
        "",
        "",
        "1498",
        "0",
        "2734511",
        "10000000",
        "893649480",
        "8245000",
        "19597152",
        "386480",
        "66266864",
        "10647216",
        "_Global_",
        "96511232",
        "113029",
        "128183",
        "116842",
        "4553",
        "67",
        "616",
        "36628",
        "233213952",
        "22950764544",
        "108935240",
        "-1",
        "0",
        "588533",
        "8245000",
        "386480",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "661680",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "4194304",
        "0",
        "24",
        "0",
        "164512",
        "34600",
        "MonitoringHost",
        "199136",
        "42",
        "16",
        "16",
        "16",
        "16",
        "5",
        "6",
        "401408",
        "402644992",
        "2",
        "38453536",
        "16060",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "60848840",
        "",
        "",
        "7",
        "0",
        "2734511",
        "10000000",
        "28891128",
        "672",
        "163960",
        "384",
        "3008248",
        "132648",
        "MonitoringHost#1",
        "3304856",
        "897",
        "18",
        "16",
        "16",
        "16",
        "7",
        "12",
        "28057600",
        "402644992",
        "45",
        "38453511",
        "33276",
        "672",
        "672",
        "384",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "2187714616",
        "",
        "",
        "71",
        "0",
        "2734511",
        "10000000",
        "39878560",
        "1454488",
        "1454512",
        "380984",
        "4513576",
        "3215032",
        "MonitoringHost#2",
        "9183120",
        "1241",
        "136",
        "68",
        "52",
        "18",
        "9",
        "192",
        "40366080",
        "402644992",
        "66761",
        "308982",
        "28536",
        "20600",
        "1454488",
        "380984",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "297254747960",
        "",
        "",
        "775",
        "0",
        "2734511",
        "10000000",
        "44739248",
        "6555512",
        "17536048",
        "0",
        "14616016",
        "2746568",
        "MonitoringHost#3",
        "34898632",
        "6881",
        "9101",
        "3366",
        "2166",
        "17",
        "10",
        "4032",
        "92631040",
        "402644992",
        "167213",
        "695370",
        "19124",
        "384482",
        "6555512",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "0",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "DTExec",
        "0",
        "549",
        "0",
        "0",
        "0",
        "0",
        "0",
        "178",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "2935446472",
        "",
        "",
        "14",
        "0",
        "2734511",
        "10000000",
        "4194304",
        "6592",
        "6616",
        "1960",
        "461680",
        "480264",
        "SQLAGENT",
        "948560",
        "323",
        "512",
        "256",
        "256",
        "0",
        "147",
        "3",
        "5337088",
        "402644992",
        "4609",
        "-1832862225",
        "30168",
        "5974",
        "6592",
        "1960",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "13492140976",
        "",
        "",
        "380",
        "0",
        "2734511",
        "10000000",
        "4194304",
        "197832",
        "406064",
        "0",
        "42306592",
        "2590216",
        "WmiPrvSE",
        "45302872",
        "99735",
        "3154",
        "297",
        "34",
        "0",
        "3",
        "32163",
        "49672192",
        "402644992",
        "13",
        "114325298",
        "8016",
        "147879",
        "197832",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "1226195984",
        "",
        "",
        "119",
        "0",
        "2734511",
        "10000000",
        "4194304",
        "11720",
        "11144",
        "480",
        "318368",
        "443592",
        "SQLAGENT#1",
        "773104",
        "1213",
        "345",
        "71",
        "69",
        "0",
        "144",
        "11",
        "5226496",
        "402644992",
        "8",
        "36869171",
        "6368",
        "11424",
        "11720",
        "480",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "0",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "SQLAGENT#2",
        "0",
        "160",
        "0",
        "0",
        "0",
        "0",
        "0",
        "2",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "0",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "SQLAGENT#3",
        "0",
        "160",
        "0",
        "0",
        "0",
        "0",
        "0",
        "2",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "0",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "SQLAGENT#4",
        "0",
        "160",
        "0",
        "0",
        "0",
        "0",
        "0",
        "2",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "21479757040",
        "",
        "",
        "13",
        "0",
        "2734511",
        "10000000",
        "4194304",
        "6464",
        "6488",
        "2192",
        "461072",
        "463880",
        "SQLAGENT#5",
        "931440",
        "325",
        "3750",
        "1875",
        "1875",
        "0",
        "147",
        "4",
        "5320704",
        "402644992",
        "3199",
        "1641551612",
        "5508",
        "6078",
        "6464",
        "2192",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "1226023960",
        "",
        "",
        "119",
        "0",
        "2734511",
        "10000000",
        "4194304",
        "11720",
        "11144",
        "480",
        "318352",
        "435536",
        "SQLAGENT#6",
        "765032",
        "1219",
        "345",
        "71",
        "69",
        "0",
        "144",
        "11",
        "5218304",
        "402644992",
        "6",
        "36869223",
        "6100",
        "11424",
        "11720",
        "480",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "823606512",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "251658240",
        "0",
        "384",
        "0",
        "32816",
        "34960",
        "sqlservr",
        "68160",
        "24",
        "23819",
        "23819",
        "0",
        "0",
        "0",
        "2",
        "327680",
        "6442319872",
        "212",
        "359397718",
        "4596",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "1004853904",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "251658240",
        "0",
        "384",
        "0",
        "32816",
        "34960",
        "sqlservr#1",
        "68160",
        "24",
        "29061",
        "29061",
        "0",
        "0",
        "0",
        "2",
        "327680",
        "6442319872",
        "213",
        "179493968",
        "2340",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "2002890144",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "251658240",
        "0",
        "384",
        "0",
        "32816",
        "34960",
        "sqlservr#2",
        "68160",
        "24",
        "57926",
        "57926",
        "0",
        "0",
        "0",
        "2",
        "327680",
        "6442319872",
        "215",
        "179584857",
        "3588",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "0",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "sqlservr#3",
        "0",
        "26",
        "0",
        "0",
        "0",
        "0",
        "0",
        "2",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
    [
        "0",
        "",
        "",
        "0",
        "0",
        "2734511",
        "10000000",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "sqlservr#4",
        "0",
        "26",
        "0",
        "0",
        "0",
        "0",
        "0",
        "2",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "0",
        "12303331941741",
        "131097013721920000",
    ],
]

discovery = {"": [("_Global_", {'upper': (10.0, 15.0)})]}

checks = {
    "": [
        (
            "_Global_",
            {"upper": (10.0, 15.0)},
            [
                (
                    0,
                    "Time in GC: 2.54%",
                    [
                        ("percent", 2.5363462051694157, 10.0, 15.0, 0, 100),
                    ],
                ),
            ],
        ),
    ],
}
